[INFO] fetching crate lightning-background-processor 0.2.3...
[INFO] fixing lightning-background-processor-0.2.3 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate lightning-background-processor 0.2.3 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate lightning-background-processor 0.2.3
[INFO] finished tweaking crates.io crate lightning-background-processor 0.2.3
[INFO] tweaked toml for crates.io crate lightning-background-processor 0.2.3 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate lightning-background-processor 0.2.3 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 60 packages to latest compatible versions
[INFO] [stderr]       Adding bitcoin-io v0.1.4 (available: v0.5.0)
[INFO] [stderr]       Adding bitcoin_hashes v0.14.2 (available: v1.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e
[INFO] running `Command { std: "docker" "start" "523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling bitcoin-io v0.1.4
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking arrayvec v0.7.7
[INFO] [stderr]    Compiling hex_lit v0.1.1
[INFO] [stderr]    Compiling secp256k1-sys v0.10.1
[INFO] [stderr]    Compiling bitcoinconsensus v0.105.0+25.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling bitcoin v0.32.10
[INFO] [stderr]     Checking bech32 v0.11.1
[INFO] [stderr]     Checking hex-conservative v0.2.2
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling lightning-macros v0.2.1
[INFO] [stderr]     Checking possiblyrandom v0.2.1
[INFO] [stderr]     Checking dnssec-prover v0.6.8
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]     Checking bitcoin_hashes v0.14.2
[INFO] [stderr]     Checking bitcoin-units v0.1.4
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking secp256k1 v0.29.1
[INFO] [stderr]     Checking base58ck v0.1.1
[INFO] [stderr]     Checking lightning-types v0.3.2
[INFO] [stderr]     Checking lightning-invoice v0.34.1
[INFO] [stderr]     Checking lightning v0.2.3
[INFO] [stderr]     Checking lightning-rapid-gossip-sync v0.2.3
[INFO] [stderr]     Checking lightning-liquidity v0.2.3
[INFO] [stderr]     Checking lightning-persister v0.2.3
[INFO] [stderr]     Checking lightning-background-processor v0.2.3 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/lib.rs (24 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:991:66
[INFO] [stdout]      |
[INFO] [stdout]  977 |     let mut last_ping_call = sleeper(PING_TIMER);
[INFO] [stdout]      |         ------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_ping_call` calls a custom destructor
[INFO] [stdout]      |         `last_ping_call` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  988 |         channel_manager.get_cm().process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         --------------------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  989 |         chain_monitor.process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         ---------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  990 |         if let Some(om) = &onion_messenger {
[INFO] [stdout]  991 |             om.get_om().process_pending_events_async(async_event_handler).await
[INFO] [stdout]      |             --------------------------------------------------------------^^^^^
[INFO] [stdout]      |             |                                                             |
[INFO] [stdout]      |             |                                                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |             |                                                             up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  992 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 1018 |         let mut await_start = None;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `await_start` calls a custom destructor
[INFO] [stdout]      |             `await_start` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1048 |         match fut.await {
[INFO] [stdout]      |               ---------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1093 |             let mut fut = Box::pin(fut);
[INFO] [stdout]      |                 -------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `fut` calls a custom destructor
[INFO] [stdout]      |                 `fut` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1103 |             match core::pin::Pin::new(&mut fut).poll(&mut ctx) {
[INFO] [stdout]      |                   --------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1171 |                     scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                     -------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                         -------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1252 |         for res in futures.await {
[INFO] [stdout]      |                    -------------
[INFO] [stdout]      |                    |       |
[INFO] [stdout]      |                    |       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                    |       `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    `iter` calls a custom destructor
[INFO] [stdout]      |                    `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                    `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 1253 |             res?;
[INFO] [stdout]      |             ----
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `fut` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `iter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:1060:39
[INFO] [stdout]      |
[INFO] [stdout]  977 |     let mut last_ping_call = sleeper(PING_TIMER);
[INFO] [stdout]      |         ------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_ping_call` calls a custom destructor
[INFO] [stdout]      |         `last_ping_call` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  988 |         channel_manager.get_cm().process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         --------------------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  989 |         chain_monitor.process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         ---------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  990 |         if let Some(om) = &onion_messenger {
[INFO] [stdout]  991 |             om.get_om().process_pending_events_async(async_event_handler).await
[INFO] [stdout]      |             -------------------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1018 |         let mut await_start = None;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `await_start` calls a custom destructor
[INFO] [stdout]      |             `await_start` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1048 |         match fut.await {
[INFO] [stdout]      |               ---------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1060 |             match check_and_reset_sleeper(&mut await_start.unwrap(), || sleeper(Duration::ZERO)) {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                                                up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1065 |         } else {
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 1093 |             let mut fut = Box::pin(fut);
[INFO] [stdout]      |                 -------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `fut` calls a custom destructor
[INFO] [stdout]      |                 `fut` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1103 |             match core::pin::Pin::new(&mut fut).poll(&mut ctx) {
[INFO] [stdout]      |                   --------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1171 |                     scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                     -------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                         -------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1252 |         for res in futures.await {
[INFO] [stdout]      |                    -------------
[INFO] [stdout]      |                    |       |
[INFO] [stdout]      |                    |       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                    |       `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    `iter` calls a custom destructor
[INFO] [stdout]      |                    `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                    `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 1253 |             res?;
[INFO] [stdout]      |             ----
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `fut` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `iter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 681 |             handle!(a);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 682 |             handle!(b);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 683 |             handle!(c);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 684 |             handle!(d);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 685 |             handle!(e);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:1707:23
[INFO] [stdout]      |
[INFO] [stdout] 1599 |                   let sleeper = match (onion_messenger.as_ref(), liquidity_manager.as_ref()) {
[INFO] [stdout]      |                       -------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `sleeper` calls a custom destructor
[INFO] [stdout]      |                       `sleeper` will be dropped later as of Edition 2024
[INFO] [stdout] 1600 |                       (Some(om), Some(lm)) => Sleeper::from_four_futures(
[INFO] [stdout] 1601 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 1602 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1603 |                           &om.get_om().get_update_future(),
[INFO] [stdout]      |                            -------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1604 |                           &lm.get_lm().get_pending_msgs_or_needs_persist_future(),
[INFO] [stdout]      |                            ------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1607 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout] 1608 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                            `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 1609 |                           &om.get_om().get_update_future(),
[INFO] [stdout]      |                            -------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                            `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1612 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                            `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 1613 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                            `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 1614 |                           &lm.get_lm().get_pending_msgs_or_needs_persist_future(),
[INFO] [stdout]      |                            ------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                            `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1617 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                            `#11` will be dropped later as of Edition 2024
[INFO] [stdout] 1618 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                            `#12` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 | /                     (kv_store.write(
[INFO] [stdout] 1640 | |                         CHANNEL_MANAGER_PERSISTENCE_PRIMARY_NAMESPACE,
[INFO] [stdout] 1641 | |                         CHANNEL_MANAGER_PERSISTENCE_SECONDARY_NAMESPACE,
[INFO] [stdout] 1642 | |                         CHANNEL_MANAGER_PERSISTENCE_KEY,
[INFO] [stdout] 1643 | |                         channel_manager.get_cm().encode(),
[INFO] [stdout] 1644 | |                     ))?;
[INFO] [stdout]      | |                       -
[INFO] [stdout]      | |                       |
[INFO] [stdout]      | |_______________________this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                         `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1678 |                           if let Err(e) = kv_store.write(
[INFO] [stdout]      |  ____________________________________-____-
[INFO] [stdout]      |  ____________________________________|____|
[INFO] [stdout]      | |                                    |
[INFO] [stdout]      | |                                    `e` calls a custom destructor
[INFO] [stdout]      | |                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout] 1679 | |                             NETWORK_GRAPH_PERSISTENCE_PRIMARY_NAMESPACE,
[INFO] [stdout] 1680 | |                             NETWORK_GRAPH_PERSISTENCE_SECONDARY_NAMESPACE,
[INFO] [stdout] 1681 | |                             NETWORK_GRAPH_PERSISTENCE_KEY,
[INFO] [stdout] 1682 | |                             network_graph.encode(),
[INFO] [stdout] 1683 | |                         ) {
[INFO] [stdout]      | |                         -
[INFO] [stdout]      | |_________________________|
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                           `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1696 | |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      | |                         -------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      | |                         `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1706 | |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      | |                         -------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      | |                         `#16` will be dropped later as of Edition 2024
[INFO] [stdout] 1707 |                           if let Err(e) = kv_store.write(
[INFO] [stdout]      |  ____________________________________-____^
[INFO] [stdout]      |  ____________________________________|____|
[INFO] [stdout]      | |                                    |
[INFO] [stdout]      | |                                    this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      | |                                    `#17` will be dropped later as of Edition 2024
[INFO] [stdout] 1708 | |                             SCORER_PERSISTENCE_PRIMARY_NAMESPACE,
[INFO] [stdout] 1709 | |                             SCORER_PERSISTENCE_SECONDARY_NAMESPACE,
[INFO] [stdout] 1710 | |                             SCORER_PERSISTENCE_KEY,
[INFO] [stdout] 1711 | |                             scorer.encode(),
[INFO] [stdout] 1712 | |                         ) {
[INFO] [stdout]      | |                         ^
[INFO] [stdout]      | |_________________________|
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      |                           up until Edition 2021 `#18` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1715 | |                     }
[INFO] [stdout]      | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#18` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `sleeper` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#14` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#17` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:2838:9
[INFO] [stdout]      |
[INFO] [stdout] 2797 |         let (_, nodes) = create_nodes(2, "test_persist_error_sync");
[INFO] [stdout]      |                 -----
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `nodes` calls a custom destructor
[INFO] [stdout]      |                 `nodes` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2838 |         match bp_future.await {
[INFO] [stdout]      |               ^^^^^^^^^^-----
[INFO] [stdout]      |               |         |
[INFO] [stdout]      |               |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2845 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `nodes` invokes this custom destructor
[INFO] [stdout]     --> src/lib.rs:2054:2
[INFO] [stdout]      |
[INFO] [stdout] 2054 |     impl Drop for Node {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:2838:19
[INFO] [stdout]      |
[INFO] [stdout] 2797 |         let (_, nodes) = create_nodes(2, "test_persist_error_sync");
[INFO] [stdout]      |                 -----
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `nodes` calls a custom destructor
[INFO] [stdout]      |                 `nodes` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2838 |         match bp_future.await {
[INFO] [stdout]      |                         ^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2845 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `nodes` invokes this custom destructor
[INFO] [stdout]     --> src/lib.rs:2054:2
[INFO] [stdout]      |
[INFO] [stdout] 2054 |     impl Drop for Node {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:991:66
[INFO] [stdout]      |
[INFO] [stdout]  977 |     let mut last_ping_call = sleeper(PING_TIMER);
[INFO] [stdout]      |         ------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_ping_call` calls a custom destructor
[INFO] [stdout]      |         `last_ping_call` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  988 |         channel_manager.get_cm().process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         --------------------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  989 |         chain_monitor.process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         ---------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  990 |         if let Some(om) = &onion_messenger {
[INFO] [stdout]  991 |             om.get_om().process_pending_events_async(async_event_handler).await
[INFO] [stdout]      |             --------------------------------------------------------------^^^^^
[INFO] [stdout]      |             |                                                             |
[INFO] [stdout]      |             |                                                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |             |                                                             up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  992 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 1018 |         let mut await_start = None;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `await_start` calls a custom destructor
[INFO] [stdout]      |             `await_start` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1048 |         match fut.await {
[INFO] [stdout]      |               ---------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1093 |             let mut fut = Box::pin(fut);
[INFO] [stdout]      |                 -------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `fut` calls a custom destructor
[INFO] [stdout]      |                 `fut` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1103 |             match core::pin::Pin::new(&mut fut).poll(&mut ctx) {
[INFO] [stdout]      |                   --------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1171 |                     scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                     -------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                         -------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1252 |         for res in futures.await {
[INFO] [stdout]      |                    -------------
[INFO] [stdout]      |                    |       |
[INFO] [stdout]      |                    |       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                    |       `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    `iter` calls a custom destructor
[INFO] [stdout]      |                    `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                    `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 1253 |             res?;
[INFO] [stdout]      |             ----
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `fut` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `iter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:1060:39
[INFO] [stdout]      |
[INFO] [stdout]  977 |     let mut last_ping_call = sleeper(PING_TIMER);
[INFO] [stdout]      |         ------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_ping_call` calls a custom destructor
[INFO] [stdout]      |         `last_ping_call` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  988 |         channel_manager.get_cm().process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         --------------------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  989 |         chain_monitor.process_pending_events_async(async_event_handler).await;
[INFO] [stdout]      |         ---------------------------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  990 |         if let Some(om) = &onion_messenger {
[INFO] [stdout]  991 |             om.get_om().process_pending_events_async(async_event_handler).await
[INFO] [stdout]      |             -------------------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1018 |         let mut await_start = None;
[INFO] [stdout]      |             ---------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `await_start` calls a custom destructor
[INFO] [stdout]      |             `await_start` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1048 |         match fut.await {
[INFO] [stdout]      |               ---------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1060 |             match check_and_reset_sleeper(&mut await_start.unwrap(), || sleeper(Duration::ZERO)) {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                                                up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1065 |         } else {
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 1093 |             let mut fut = Box::pin(fut);
[INFO] [stdout]      |                 -------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `fut` calls a custom destructor
[INFO] [stdout]      |                 `fut` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1103 |             match core::pin::Pin::new(&mut fut).poll(&mut ctx) {
[INFO] [stdout]      |                   --------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1171 |                     scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                     -------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      |                         -------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1252 |         for res in futures.await {
[INFO] [stdout]      |                    -------------
[INFO] [stdout]      |                    |       |
[INFO] [stdout]      |                    |       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                    |       `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    `iter` calls a custom destructor
[INFO] [stdout]      |                    `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                    this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                    `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 1253 |             res?;
[INFO] [stdout]      |             ----
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `fut` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `iter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 07s
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 681 |             handle!(a);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 682 |             handle!(b);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 683 |             handle!(c);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 684 |             handle!(d);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 685 |             handle!(e);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:1707:23
[INFO] [stdout]      |
[INFO] [stdout] 1599 |                   let sleeper = match (onion_messenger.as_ref(), liquidity_manager.as_ref()) {
[INFO] [stdout]      |                       -------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `sleeper` calls a custom destructor
[INFO] [stdout]      |                       `sleeper` will be dropped later as of Edition 2024
[INFO] [stdout] 1600 |                       (Some(om), Some(lm)) => Sleeper::from_four_futures(
[INFO] [stdout] 1601 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 1602 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1603 |                           &om.get_om().get_update_future(),
[INFO] [stdout]      |                            -------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1604 |                           &lm.get_lm().get_pending_msgs_or_needs_persist_future(),
[INFO] [stdout]      |                            ------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1607 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout] 1608 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                            `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 1609 |                           &om.get_om().get_update_future(),
[INFO] [stdout]      |                            -------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                            `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1612 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                            `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 1613 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                            `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 1614 |                           &lm.get_lm().get_pending_msgs_or_needs_persist_future(),
[INFO] [stdout]      |                            ------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                            `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1617 |                           &channel_manager.get_cm().get_event_or_persistence_needed_future(),
[INFO] [stdout]      |                            -----------------------------------------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                            `#11` will be dropped later as of Edition 2024
[INFO] [stdout] 1618 |                           &chain_monitor.get_update_future(),
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                            `#12` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 | /                     (kv_store.write(
[INFO] [stdout] 1640 | |                         CHANNEL_MANAGER_PERSISTENCE_PRIMARY_NAMESPACE,
[INFO] [stdout] 1641 | |                         CHANNEL_MANAGER_PERSISTENCE_SECONDARY_NAMESPACE,
[INFO] [stdout] 1642 | |                         CHANNEL_MANAGER_PERSISTENCE_KEY,
[INFO] [stdout] 1643 | |                         channel_manager.get_cm().encode(),
[INFO] [stdout] 1644 | |                     ))?;
[INFO] [stdout]      | |                       -
[INFO] [stdout]      | |                       |
[INFO] [stdout]      | |_______________________this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                         `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1678 |                           if let Err(e) = kv_store.write(
[INFO] [stdout]      |  ____________________________________-____-
[INFO] [stdout]      |  ____________________________________|____|
[INFO] [stdout]      | |                                    |
[INFO] [stdout]      | |                                    `e` calls a custom destructor
[INFO] [stdout]      | |                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout] 1679 | |                             NETWORK_GRAPH_PERSISTENCE_PRIMARY_NAMESPACE,
[INFO] [stdout] 1680 | |                             NETWORK_GRAPH_PERSISTENCE_SECONDARY_NAMESPACE,
[INFO] [stdout] 1681 | |                             NETWORK_GRAPH_PERSISTENCE_KEY,
[INFO] [stdout] 1682 | |                             network_graph.encode(),
[INFO] [stdout] 1683 | |                         ) {
[INFO] [stdout]      | |                         -
[INFO] [stdout]      | |_________________________|
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                           `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1696 | |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      | |                         -------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      | |                         `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1706 | |                         scorer.write_lock().time_passed(duration_since_epoch);
[INFO] [stdout]      | |                         -------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      | |                         `#16` will be dropped later as of Edition 2024
[INFO] [stdout] 1707 |                           if let Err(e) = kv_store.write(
[INFO] [stdout]      |  ____________________________________-____^
[INFO] [stdout]      |  ____________________________________|____|
[INFO] [stdout]      | |                                    |
[INFO] [stdout]      | |                                    this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      | |                                    `#17` will be dropped later as of Edition 2024
[INFO] [stdout] 1708 | |                             SCORER_PERSISTENCE_PRIMARY_NAMESPACE,
[INFO] [stdout] 1709 | |                             SCORER_PERSISTENCE_SECONDARY_NAMESPACE,
[INFO] [stdout] 1710 | |                             SCORER_PERSISTENCE_KEY,
[INFO] [stdout] 1711 | |                             scorer.encode(),
[INFO] [stdout] 1712 | |                         ) {
[INFO] [stdout]      | |                         ^
[INFO] [stdout]      | |_________________________|
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      |                           up until Edition 2021 `#18` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1715 | |                     }
[INFO] [stdout]      | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#18` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `sleeper` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lightning-0.2.3/src/util/wakers.rs:216:1
[INFO] [stdout]      |
[INFO] [stdout]  216 | impl Drop for Future {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#14` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#17` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: lightning-background-processor v0.2.3 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking lightning-background-processor v0.2.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]   --> src/lib.rs:85:15
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[cfg(all(not(c_bindings), not(feature = "std")))]
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:334:15
[INFO] [stdout]     |
[INFO] [stdout] 334 | #[cfg(all(not(c_bindings), feature = "std"))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:337:15
[INFO] [stdout]     |
[INFO] [stdout] 337 | #[cfg(all(not(c_bindings), not(feature = "std")))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:340:11
[INFO] [stdout]     |
[INFO] [stdout] 340 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:358:11
[INFO] [stdout]     |
[INFO] [stdout] 358 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:365:15
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[cfg(all(not(c_bindings), not(taproot)))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `taproot`
[INFO] [stdout]    --> src/lib.rs:365:32
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[cfg(all(not(c_bindings), not(taproot)))]
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(taproot)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(taproot)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:370:15
[INFO] [stdout]     |
[INFO] [stdout] 370 | #[cfg(all(not(c_bindings), taproot))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `taproot`
[INFO] [stdout]    --> src/lib.rs:370:28
[INFO] [stdout]     |
[INFO] [stdout] 370 | #[cfg(all(not(c_bindings), taproot))]
[INFO] [stdout]     |                            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(taproot)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(taproot)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:377:11
[INFO] [stdout]     |
[INFO] [stdout] 377 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:392:11
[INFO] [stdout]     |
[INFO] [stdout] 392 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:421:11
[INFO] [stdout]     |
[INFO] [stdout] 421 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:448:15
[INFO] [stdout]     |
[INFO] [stdout] 448 | #[cfg(all(not(c_bindings), feature = "std"))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 681 |             handle!(a);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 682 |             handle!(b);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 683 |             handle!(c);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 684 |             handle!(d);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 685 |             handle!(e);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]   --> src/lib.rs:85:15
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[cfg(all(not(c_bindings), not(feature = "std")))]
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:334:15
[INFO] [stdout]     |
[INFO] [stdout] 334 | #[cfg(all(not(c_bindings), feature = "std"))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:337:15
[INFO] [stdout]     |
[INFO] [stdout] 337 | #[cfg(all(not(c_bindings), not(feature = "std")))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:340:11
[INFO] [stdout]     |
[INFO] [stdout] 340 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:358:11
[INFO] [stdout]     |
[INFO] [stdout] 358 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:365:15
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[cfg(all(not(c_bindings), not(taproot)))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `taproot`
[INFO] [stdout]    --> src/lib.rs:365:32
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[cfg(all(not(c_bindings), not(taproot)))]
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(taproot)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(taproot)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:370:15
[INFO] [stdout]     |
[INFO] [stdout] 370 | #[cfg(all(not(c_bindings), taproot))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `taproot`
[INFO] [stdout]    --> src/lib.rs:370:28
[INFO] [stdout]     |
[INFO] [stdout] 370 | #[cfg(all(not(c_bindings), taproot))]
[INFO] [stdout]     |                            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(taproot)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(taproot)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:377:11
[INFO] [stdout]     |
[INFO] [stdout] 377 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:392:11
[INFO] [stdout]     |
[INFO] [stdout] 392 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:421:11
[INFO] [stdout]     |
[INFO] [stdout] 421 | #[cfg(not(c_bindings))]
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]    --> src/lib.rs:448:15
[INFO] [stdout]     |
[INFO] [stdout] 448 | #[cfg(all(not(c_bindings), feature = "std"))]
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]     --> src/lib.rs:1894:8
[INFO] [stdout]      |
[INFO] [stdout] 1894 |     #[cfg(c_bindings)]
[INFO] [stdout]      |           ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider using a Cargo feature instead
[INFO] [stdout]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]               [lints.rust]
[INFO] [stdout]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]     --> src/lib.rs:1896:12
[INFO] [stdout]      |
[INFO] [stdout] 1896 |     #[cfg(not(c_bindings))]
[INFO] [stdout]      |               ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider using a Cargo feature instead
[INFO] [stdout]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]               [lints.rust]
[INFO] [stdout]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]     --> src/lib.rs:2290:8
[INFO] [stdout]      |
[INFO] [stdout] 2290 |     #[cfg(c_bindings)]
[INFO] [stdout]      |           ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider using a Cargo feature instead
[INFO] [stdout]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]               [lints.rust]
[INFO] [stdout]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `c_bindings`
[INFO] [stdout]     --> src/lib.rs:3606:12
[INFO] [stdout]      |
[INFO] [stdout] 3606 |     #[cfg(not(c_bindings))]
[INFO] [stdout]      |               ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider using a Cargo feature instead
[INFO] [stdout]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]               [lints.rust]
[INFO] [stdout]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(c_bindings)'] }
[INFO] [stdout]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(c_bindings)");` to the top of the `build.rs`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightning-background-processor` (lib) due to 5 previous errors; 13 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 681 |             handle!(a);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 682 |             handle!(b);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 683 |             handle!(c);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 684 |             handle!(d);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/lib.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^ occurs within macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 685 |             handle!(e);
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout]     = note: this error originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] 667 |                         &mut JoinerResult::<ERR, _>::Pending(Some(ref mut val)) => {
[INFO] [stdout]     |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightning-background-processor` (lib test) due to 5 previous errors; 17 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e", kill_on_drop: false }`
[INFO] [stdout] 523d1945e30f3b2ad1618e8a3cecef2f044f05642b85dffa88b674f72e9b1d9e
